The human communication process has evolved over thousands of years to principally include both spoken and written communication. In addition, over time much of the combined knowledge base of the world has been recorded in written form (e.g., in books), so that others are able to more conveniently access and use such information.
With the advent of computer technology, more and more information is stored in an electronic form and accessed via a computer, rather than via the written page. Nonetheless, throughout the evolution of human communication, information has always be regarded as being essentially one-dimensional—that is, a series of ideas strung together in a sequence of words or pages. Book pages and computer displays are each two-dimensional in nature, and may even provide two dimensional representations of three-dimensional objects. However, the basic structure of a collection of information presented in either case is still for the most part one-dimensional insofar as a person processes the information in a generally linear fashion.
A one-dimensional representation of information may be adequate for some when the amount of information is not that great. However, a person may have difficulty fully comprehending a collection of information about a particular topic when the information is located in several sources and/or when the information is associated with several levels of abstraction.
A level of abstraction typically relates to a particular manner of looking at a given collection of information, also referred to as a body of knowledge. Among other criteria, different levels of abstraction may relate to different comprehension levels, e.g., a basic or summary level vs. an advanced level. Taking a subject such as snakes as an example, a discussion at an elementary school level might focus on how snakes lack legs or what snakes eat. At the level of a Ph.D. herpetologist, however, a discussion might instead focus on the evolutionary development of snakes or the biological mechanisms by which snakes sense prey.
A person may desire to access a collection of information in any number of circumstances, such as when exploring new disciplines or new approaches to familiar territory, or when returning to areas infrequently visited. When doing so, however, a person may be required to manage and understand a number of levels of abstraction at the same time. In the case of attempting to solve a particular problem, for example, a person may be required to manage and understand numerous levels of abstraction, e.g., broad and fundamental concepts, key terms and definitions, the details of the specific problem, the details of the solution to the specific problem, etc. However, both books and computers typically force a person to access the information from one source, and/or from one level of abstraction, at a time. The person is therefore required to plod through information in a linear fashion without the ability to visualize the relationship of the information in the broader scope of the body of knowledge.
Furthermore, in the instances where a person is able to access information from more than one source or level of abstraction, the information is often provided in disjointed views, offering no opportunity for a person to visualize the interaction of information from different levels and/or sources. When accessing books, a person may review different books related to a given topic, or may review different sections or chapters within the same book. Even though a person can open two books at the same time, the person still is required to shift his or her focus back and forth between the books, and between different pages in those books. As a result, the person is required to consciously recognize and maintain any associations in the information.
Moreover, while accessing information about a particular body of knowledge can be difficult and confusing for readers, oftentimes authors have just as much difficulty in deciding how to present information from a body of knowledge to potential readers. This is because a reader may be from any number of potential audiences. An audience in some instances may be made up of one or more individuals with a common level of understanding or experience, or it may be made up of differing individuals with differing views and abilities. Authors therefore often focus on a single audience, which has the undesirable effect of making the presentation less useful for other audiences. For example, a book may be too difficult for beginners to understand and too basic to even be useful to an expert. As a result, separate books at differing levels may eventually be authored for a given body of knowledge. Of course, this only makes it more difficult for a reader to access and comprehend the specific body of knowledge.
Many of the same difficulties associated with accessing and authoring information in book form are also associated with information in electronic form. Many computer systems, for example, use graphical user interfaces (GUIs) through which users are able to interact with the computer systems through intuitive operations such as “pointing and clicking” on graphical display elements. Information is often presented to a user in a GUI environment using a graphical user interface component known as a window. Each computer software application executing in a GUI environment is typically allocated one or more windows to present information to and/or receive input from a user. Moreover, a number of computer systems provide the ability to multitask—that is, to execute more than one computer software application at the same time—such that windows from multiple applications may be displayed on a computer display simultaneously.
While information from more than one source or level of abstraction for a body of knowledge may be displayed simultaneously in different windows on a computer system, the relationship between the information displayed in the different windows, as well as the relationship of the information within the broader scope of the body of knowledge, is often not readily discernable by a user. As a result, it can become difficult for a user to manage the information in a coherent manner. Switching between different formats and views can become disorienting and distracting, often significantly impeding the learning process.
In one specific technology area, online computer help systems, users may be presented with information about computer topics, e.g., relating to particular computer software applications. The presentation of these computer topics in many such systems often includes the presentation of multiple levels of abstraction of the computer topics. For example, a help system may display a help map or table of contents in one window at the same time that one or more help topics are displayed in other windows. However, the actual hierarchical relationship of any of these windows is typically not presented to the user, and consequently, a user may nonetheless become disoriented when switching back and forth between a map or table of contents, and one or more help topics. Particularly when more than one help topic is being displayed at a time, and when associated examples and/or tutorials are also presented, it can become difficult for a user to absorb and comprehend all of the various aspects of a particular computer topic.
Therefore, a significant need exists for an improved manner of representing a body of knowledge in a computer system to facilitate understanding of the body of knowledge by users. Specifically, a need exists for a manner of representing both information from a body of knowledge, as well as the contextual relationship of the information within the broader scope of the body of knowledge.